﻿namespace MobileTrack.Web.ViewModels
{
    using System;
    using System.ComponentModel.DataAnnotations;
    using MobileTrack.Core.Model;

    public class LastSeguimientoViewModel
    {
        public LastSeguimientoViewModel(Celular celular)
        {
            if (celular == null)
            {
                throw new ArgumentNullException("celular");
            }
            
            var seguimiento = celular.LastSeguimiento;

            this.Id = seguimiento.Id;
            this.Imei = celular.Imei;
            this.Producto = celular.Descripcion;
            this.EstadoActual = ModelHelper.ToString(seguimiento.Estado);
            this.UltimoComprobante = seguimiento.Comprobante;
            this.UltimaUbicacion = seguimiento.Sucursal.DisplayName;
            this.UltimaActividad = seguimiento.Fecha;
        }

        public long Id { get; set; }

        [Display(Name = "IMEI")]
        public long? Imei { get; set; }

        public string Producto { get; set; }

        [Display(Name = "Estado Actual")]
        public string EstadoActual { get; set; }

        [Display(Name = "Ultimo Comprobante")]
        public string UltimoComprobante { get; set; }

        [Display(Name = "Ultima Ubicacion")]
        public string UltimaUbicacion { get; set; }

        [Display(Name = "Ultima Actividad")]
        public DateTime UltimaActividad { get; set; }
    }
}